table of contents
manadv_set_context_attr(3) | manadv_set_context_attr(3) |
NAME¶
manadv_set_context_attr - Set context attributes
SYNOPSIS¶
-
#include <infiniband/manadv.h> int manadv_set_context_attr(struct ibv_context *context, enum manadv_set_ctx_attr_type attr_type, void *attr);
DESCRIPTION¶
manadv_set_context_attr gives the ability to set vendor specific attributes on the RDMA context.
ARGUMENTS¶
- context
- RDMA device context to work on.
- attr_type
- The type of the provided attribute.
- attr
- Pointer to the attribute to be set.
attr_type¶
-
enum manadv_set_ctx_attr_type { /* Attribute type uint8_t */ MANADV_SET_CTX_ATTR_BUF_ALLOCATORS = 0, };
- MANADV_SET_CTX_ATTR_BUF_ALLOCATORS
- Provide an external buffer allocator
-
struct manadv_ctx_allocators { void *(*alloc)(size_t size, void *priv_data); void (*free)(void *ptr, void *priv_data); void *data; };
- alloc
- Function used for buffer allocation instead of libmana internal method
- free
- Function used to free buffers allocated by alloc function
- data
- Metadata that can be used by alloc and free functions
RETURN VALUE¶
Returns 0 on success, or the value of errno on failure (which indicates the failure reason).
AUTHOR¶
Long Li <longli@microsoft.com>